using System;

namespace MikeKappel.Com.CS.PayPal.Model
{
    /// <summary>
    /// Summary description for PayPalDetailItem
    /// </summary>
    public class PayPalPaymentDetailItem
    {
        public PayPalPaymentDetailItem(String name, String desc, Decimal amt, String number, String qty, String taxAmt, Int32 weight, Int32 length, Int32 width, Int32 height)
        {
            this.name = name;
            this.desc = desc;
            this.amt = amt;
            this.number = number;
            this.qty = qty;
            this.taxAmt = taxAmt;
            this.weight = weight;
            this.length = length;
            this.width = width;
        }

        /// <summary>
        /// L_NAMEn
        /// (Optional) Item name.
        /// These parameters must be ordered sequentially beginning with 0 (for example L_NAME0, L_NAME1).
        /// Character length and limitations: 127 single-byte characters
        /// </summary>
        public String Name 

        {
            get
            {
                return name;
            }
            set
            {
                name = value;
            }
        }
        private String name;


        /// <summary>
        /// L_DESCn 
        /// (Optional) Item description.
        /// Character length and limitations: 127 single-byte characters
        /// </summary>
        public String Desc
        {
            get
            {
                return desc;
            }
            set
            {
                desc = value;
            }
        }
        private String desc;

        /// <summary>
        /// L_AMT n 
        /// (Optional) Cost of item.
        /// These parameters must be ordered sequentially beginning with 0 (for example L_AMT0, L_AMT1).
        /// Note: Character length and limitations: Must not exceed $10,000 USD in any currency. No currency symbol. Regardless of currency, decimal separator must be a period (.), and the optional thousands separator must be a comma (,). Equivalent to nine characters maximum for USD.
        /// Note: If you specify a value for L_AMTn , you must specify a value for ITEMAMT.
        /// </summary>
        public Decimal Amt
        {
            get
            {
                return amt;
            }
            set
            {
                amt = value;
            }
        }
        private Decimal amt;

        /// <summary>
        /// L_NUMBER n
        /// (Optional) Item number.
        /// These parameters must be ordered sequentially beginning with 0 (for example L_NUMBER0, L_NUMBER1).
        /// Character length and limitations: 127 single-byte characters
        /// </summary>
        public String Number
        {
            get
            {
                return number;
            }
            set
            {
                number = value;
            }
        }
        private String number;

        /// <summary>
        /// L_QTY n 
        /// (Optional) Item quantity.
        /// These parameters must be ordered sequentially beginning with 0 (for example L_QTY0, L_QTY1).
        /// Character length and limitations: Any positive integer
        /// </summary>
        public String Qty
        {
            get
            {
                return qty;
            }
            set
            {
                qty = value;
            }
        }
        private String qty;

        /// <summary>
        /// L_TAXAMT n 
        /// (Optional) Item sales tax.
        /// Note: Character length and limitations: Must not exceed $10,000 USD in any currency. No currency symbol. Regardless of currency, decimal separator must be a period (.), and the optional thousands separator must be a comma (,). Equivalent to nine characters maximum for USD.
        /// These parameters must be ordered sequentially beginning with 0 (for example L_TAXAMT0, L_TAXAMT1).
        /// </summary>
        public String TaxAmt
        {
            get
            {
                return taxAmt;
            }
            set
            {
                taxAmt = value;
            }
        }
        private String taxAmt;

        /// <summary>
        /// L_ITEMWEIGHTVALUEn,L_ITEMWEGHTUNITn 
        /// (Optional) Item weight corresponds to the weight of the item. You can pass this data to the shipping carrier as is without having to make an additional database query.
        /// These parameters must be ordered sequentially beginning with 0 (for example L_ITEMWEIGHTVALUE0, L_ITEMWEIGHTVALUE1).
        /// Character length and limitations: Any positive integer
        /// </summary>
        public Int32 Weight
        {
            get
            {
                return weight;
            }
            set
            {
                weight = value;
            }
        }
        private Int32 weight;

        /// <summary>
        /// L_ITEMLENGTHVALUEnL_ITEMLENGTHUNITn
        ///(Optional) Item length corresponds to the length of the item. You can pass this data to the shipping carrier as is without having to make an additional database query.
        ///These parameters must be ordered sequentially beginning with 0 (for example L_ITEMLENGTHVALUE0, L_ITEMLENGTHVALUE1).
        ///Character length and limitations: Any positive integer
        /// </summary>
        public Int32 Length
        {
            get
            {
                return length;
            }
            set
            {
                length = value;
            }
        }
        private Int32 length;

        /// <summary>
        ///L_ITEMWIDTHVALUEn L_ITEMWIDTHUNITn
        ///(Optional) Item width corresponds to the width of the item. You can pass this data to the shipping carrier as is without having to make an additional database query.
        ///These parameters must be ordered sequentially beginning with 0 (for example L_ITEMWIDTHVALUE0, L_ITEMWIDTHVALUE1).
        ///Character length and limitations: Any positive integer
        /// </summary>
        public Int32 Width
        {
            get
            {
                return width;
            }
            set
            {
                width = value;
            }
        }
        private Int32 width;

        /// <summary>
        ///L_ITEMHEIGHTVALUEn L_ITEMHEIGHTUNITn 
        ///(Optional) Item height corresponds to the height of the item. You can pass this data to the shipping carrier as is without having to make an additional database query.
        ///These parameters must be ordered sequentially beginning with 0 (for example L_ITEMHEIGHTVALUE0, L_ITEMHEIGHTVALUE1).
        ///Character length and limitations: Any positive integer
        /// </summary>
        public Int32 Height
        {
            get
            {
                return height;
            }
            set
            {
                height = value;
            }
        }
        private Int32 height;
    }
}
